One Model to Rule Them All!
Herzlich Willkommen!
Masterplan
- Korrelation
- Regression
- Einfache lineare Regression (LM)
- Multiple lineare Regression
- Generalized Linear Models (GLM)
- Logistische Regression
- Poisson Regression
Zum Modus des Workshops
Block I: Grundbegriffe
Block II: Korrelation
Warm-Up Aufgaben
Definitionen
Die Pearson Korrelation ist wie folgt definiert:
\[r_{x, y}=\frac{\sum_{i=1}^n\left(x_i-\bar{x}\right)\left(y_i-\bar{y}\right)}{\sqrt{\sum_{i=1}^n\left(x_i-\bar{x}\right)^2 \sum_{i=1}^n\left(y_i-\bar{y}\right)^2}} = \frac{Cov(x,y)}{s_x \cdot s_y} = Cov(x,y) \cdot \frac{1}{s_x} \cdot \frac{1}{s_y}\]
In der folgenden dynamischen Visualisierung kann man sehen, dass die Kovarianz der »gerichteten Fläche« entspricht:
Da die Kovarianz aber von der Maßeinheit der Größen abhängt wird diese durch die Standardabweichung beider Größen geteilt.
Eigenschaften Pearson’s \(r\)
- Pearson’s \(r\) beschreibt die Stärke der (negativen oder positiven) Assoziation zweier bivariat normalverteilten Variablen
- Pearson’s \(r\) nimmt Werte zwischen -1 und 1 an \((-1 \leq r \leq 1)\). -1 impliziert die maximale negative Assoziation, 0 keine Assoziation und 1 die maximale positive Assoziation
- Nach Cohen (1988), gilt \(r =.1\) (bzw. \(r = -.1\)) als kleiner Effekt, \(r =.3\) (bzw. \(r = -.3\)) als moderater und \(r =.5\) (bzw. \(r = -.5\)) als starker Effekt
Visual Guessing Pearson’s \(r\)
Meiner Erfahrung nach ist es höchst sinnvoll Effektstärken in Grafiken überstezen zu können und umgekehrt. Um dies zu lernen kann die folgende handgestrickte App dienen.
Block III: Regression
Einfache lineare Regression
Bsp: Lernstunden vs. Lernerfolg
Parametrisierung
- Darstellung als Formel (Term)
- Typische Schreibweise: \(y_i = b_0 + b_1 \cdot x_i + \epsilon_i\)
- Generalisierte Schreibweise: \(y_i \sim \mathcal{N}(\mu,\,\sigma^{2})\) mit \(\mu = b_0 + b_1 \cdot x_i\)
- Datenbeispiel: \(\text{Punkte}_i = 10 + 0,5 \cdot \text{Vorbereitungsaufwand}_i + \epsilon_i\)
- Darstellung als Pfadmodell
Parameterschätzung
Effektstärke \(\beta_1\)
Effektstärke \(R^2\)
Multiple Regression
- Typische Schreibweise: \(y_i = b_0 + b_1 \cdot x_{1i} + b_2 \cdot x_{2i} + \dots + b_j \cdot x_{ji} + \epsilon_i\)
- Generalisierte Schreibweise: \(y_i \sim \mathcal{N}(\mu,\,\sigma^{2})\) mit \(\mu = b_0 + b_1 \cdot x_{1i} + b_2 \cdot x_{2i} + \dots + b_j \cdot x_{ji}\)
- Datenbeispiel: \(\text{Punkte}_i = -0,13 + 0,52 \cdot \text{Vorbereitungsaufwand}_i + 0,38 \cdot \text{Pruefungsangst}_i + \epsilon_i\)
- Darstellung als Pfadmodell
- Geometrische Darstellung
Multiple Regression mit Dummyvariablen (a.k.a t-Test & ANOVA)
Beispieldaten
Als Datengrundlage sollen auf Klassenebene aggregierte Leistungswerte in Mathematik aus dem STAR-Projekt dienen. Sie untersuchen die Effekte einer Klassengrößenreduktion bzw. Hilfslehrkraft (Achilles u. a., 1985).
| g3classtype | g3tchid | math_per_class | regsizeplusaid | regsize |
|---|---|---|---|---|
| 3 | 11203810 | 614.6400 | 1 | 0 |
| 2 | 11203811 | 608.5417 | 0 | 1 |
| 1 | 11203812 | 581.3077 | 0 | 0 |
| 2 | 12305610 | 633.4375 | 0 | 1 |
| 1 | 12305611 | 613.1000 | 0 | 0 |
| 3 | 12305612 | 633.6364 | 1 | 0 |
Ein Modell \(Mathescore_i \sim \mathcal{N}(\mu,\,\sigma^{2})\) mit \(\mu = b_0 + b_1 \cdot regsizeplusaid_{i} + b_2 \cdot regsize_{i}\) beschreibt die beiden Mittelwertsdifferenzen der Gruppen »kleine Klasse« und »reguläre Klasse« sowie »kleine Klasse« und »reguläre Klasse mit Hilfslehrkaft«.
star_model01 <- lm(math_per_class ~ regsize,
data = data_star |>
filter(regsizeplusaid != 1))
star_model02 <- lm(math_per_class ~ regsize + regsizeplusaid,
data = data_star)
tab_model(star_model01, star_model02,
show.std = T)| math per class | math per class | |||||||||
| Predictors | Estimates | std. Beta | CI | standardized CI | p | Estimates | std. Beta | CI | standardized CI | p |
| (Intercept) | 623.20 | -0.00 | 619.55 – 626.85 | -0.13 – 0.13 | <0.001 | 623.20 | -0.00 | 619.55 – 626.86 | -0.11 – 0.11 | <0.001 |
| regsize | -6.59 | -0.15 | -12.48 – -0.69 | -0.28 – -0.02 | 0.029 | -6.59 | -0.13 | -12.49 – -0.68 | -0.25 – -0.01 | 0.029 |
| regsizeplusaid | -8.06 | -0.17 | -13.61 – -2.50 | -0.29 – -0.05 | 0.005 | |||||
| Observations | 227 | 334 | ||||||||
| R2 / R2 adjusted | 0.021 / 0.017 | 0.028 / 0.022 | ||||||||
Block IV: Generalized Linear Models
Ein verallgemeinertes lineares Modell umfasst typischerweise
- einen Datenvektor \(y = (y_1, . . . , y_n)\)
- Prädiktoren \(\mathbf{X}\) und Koeffizienten \(\beta\), die einen linearen Prädiktor \(\mathbf{X}{\beta}\) bilden
- Eine Verknüpfungsfunktion \(g\), die einen Vektor von transformierten Daten \(\hat{y}=g^{-1}(\mathbf(X) \beta)\) ergibt, die zur Modellierung der Daten verwendet werden
- Eine Datenverteilung \(P(y)\)
- Möglicherweise andere Parameter, wie Varianzen, »Überstreuungen« und Grenzwerte, die in die Prädiktoren, die Verknüpfungsfunktion und die Datenverteilung eingehen.
Beispiel logistische Regression
Mit der logistischen Regression werden Binäre Daten (nominale Variablen mit zwei Ausprägungen) anhand von metrischen oder dummykodierten Variablen prädiziert. Dabei gilt:
\[\begin{aligned} y_i & \sim \operatorname{Bernoulli(p_i)} \\ \operatorname{logit}\left(p_i\right) & =X_i \beta \end{aligned}\]mit \(\operatorname{logit}(x)=\log (x /(1-x))\).
Datenbeispiel
Als Datengrundlage sollen hier über zehntausend Wählenrinnen dienen, die entwender beabsichtigten G. W. Bush zu wählen bush = 1 oder nicht bush = 0. Diese binäre abhängige Variable kann dann mit den unabhängigen Variablen edu, age, female etc. prädiziert werden.
data_poll_repub# A tibble: 13,544 × 10
org year survey bush state edu age female black weight
<dbl+lbl> <dbl> <dbl+lbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 [cbsnyt] 1 1 [9152] 1 7 2 2 1 0 1403
2 1 [cbsnyt] 1 1 [9152] 1 33 4 3 0 0 778
3 1 [cbsnyt] 1 1 [9152] 0 20 2 1 1 0 1564
4 1 [cbsnyt] 1 1 [9152] 1 31 3 2 1 0 1055
5 1 [cbsnyt] 1 1 [9152] 1 18 3 1 1 0 1213
6 1 [cbsnyt] 1 1 [9152] 1 31 4 2 0 0 910
7 1 [cbsnyt] 1 1 [9152] 1 40 1 3 0 0 735
8 1 [cbsnyt] 1 1 [9152] 1 33 4 2 1 0 410
9 1 [cbsnyt] 1 1 [9152] 0 22 4 2 1 0 410
10 1 [cbsnyt] 1 1 [9152] 1 22 4 3 0 0 778
# ℹ 13,534 more rows
mod_poll01 <-
glm(bush ~ age,
family = binomial(link = "logit"),
data = data_poll_repub)
summary(mod_poll01)
Call:
glm(formula = bush ~ age, family = binomial(link = "logit"),
data = data_poll_repub)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.313 -1.292 1.047 1.067 1.108
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 0.36314 0.04812 7.547 4.47e-14 ***
age -0.04930 0.01887 -2.613 0.00898 **
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 15858 on 11565 degrees of freedom
Residual deviance: 15851 on 11564 degrees of freedom
(1978 observations deleted due to missingness)
AIC: 15855
Number of Fisher Scoring iterations: 3
mod_poll02 <-
glm(bush ~ black,
family = binomial(link = "logit"),
data = data_poll_repub)
summary(mod_poll02)
Call:
glm(formula = bush ~ black, family = binomial(link = "logit"),
data = data_poll_repub)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.336 -1.336 1.027 1.027 1.752
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 0.36581 0.01968 18.59 <2e-16 ***
black -1.65796 0.08382 -19.78 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 15858 on 11565 degrees of freedom
Residual deviance: 15376 on 11564 degrees of freedom
(1978 observations deleted due to missingness)
AIC: 15380
Number of Fisher Scoring iterations: 4
tab_model(mod_poll01, mod_poll02)| bush | bush | |||||
| Predictors | Odds Ratios | CI | p | Odds Ratios | CI | p |
| (Intercept) | 1.44 | 1.31 – 1.58 | <0.001 | 1.44 | 1.39 – 1.50 | <0.001 |
| age | 0.95 | 0.92 – 0.99 | 0.009 | |||
| black | 0.19 | 0.16 – 0.22 | <0.001 | |||
| Observations | 11566 | 11566 | ||||
| R2 Tjur | 0.001 | 0.041 | ||||